Skip to content

[CI] Add fields in CI matrix that determine devcontainer repo and runner labels - #11022

Merged
wmaxey merged 3 commits into
mainfrom
enh/parameterize_ci_matrix
Sep 2, 2026
Merged

[CI] Add fields in CI matrix that determine devcontainer repo and runner labels#11022
wmaxey merged 3 commits into
mainfrom
enh/parameterize_ci_matrix

Conversation

@wmaxey

@wmaxey wmaxey commented Aug 26, 2026

Copy link
Copy Markdown
Member

Description

closes

Allows switching which devcontainers and runner labels are used for testing. This gives us the ability to supply different inputs when generating test lists.

As a follow-up I'm going to change the windows devcontainer labels to follow the format of cpp-{host}-{cuda} as this prevents us from further simplifying the devcontainer tag generation.

rapidsai/devcontainers#758

Checklist

  • New or existing tests cover these changes.
  • The documentation is up to date with these changes.

@wmaxey
wmaxey requested a review from a team as a code owner August 26, 2026 19:24
@wmaxey
wmaxey requested a review from jrhemstad August 26, 2026 19:24
@github-project-automation github-project-automation Bot moved this to Todo in CCCL Aug 26, 2026
@cccl-authenticator-app cccl-authenticator-app Bot moved this from Todo to In Review in CCCL Aug 26, 2026
@coderabbitai

coderabbitai Bot commented Aug 26, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 96439a5a-d749-4b8f-a9e5-5c871d483080

📥 Commits

Reviewing files that changed from the base of the PR and between 0f8ca7c and acbbbb6.

📒 Files selected for processing (1)
  • .github/actions/workflow-run-job-linux/action.yml

Included review availability: Your plan provides up to 12 included reviews per hour; 10 remain after this review.


📝 Walkthrough

Summary by CodeRabbit

  • New Features

    • Added configurable runner labels and development container image settings.
    • Added explicit GPU count configuration for workflow jobs.
    • Improved support for multi-GPU runners and customizable GPU labels.
    • Workflow jobs now receive operating system and GPU details automatically.
  • Bug Fixes

    • GPU setup and device passthrough now reliably follow configured GPU counts rather than runner-name conventions.
    • Windows job detection now prioritizes the configured operating system.

Walkthrough

GPU metadata now includes explicit GPU counts and configurable runner and image settings. Dispatch jobs emit operating system and GPU count fields. Linux and Windows workflows forward these values to job actions, which use them for GPU setup and passthrough.

Changes

GPU runner configuration

Layer / File(s) Summary
Metadata and dispatch generation
ci/matrix.yaml, .github/actions/workflow-build/build-workflow.py
Matrix entries define GPU counts, runner identifiers, label templates, and devcontainer image settings. Generated jobs include configurable labels, image tags, os, and gpu_count.
Dispatch input propagation
.github/actions/workflow-build/prepare-workflow-dispatch.py, .github/workflows/workflow-dispatch-*.yml
Platform detection prioritizes explicit os values. Standalone and two-stage workflows forward GPU counts to Linux and Windows job actions.
GPU execution selection
.github/actions/workflow-run-job-linux/action.yml, .github/actions/workflow-run-job-windows/action.yml
Job actions default gpu_count to zero. Linux GPU selection and Windows driver installation and Docker passthrough use the explicit count instead of runner-label parsing.

Suggested reviewers: jrhemstad

Merge Risk: ⚪ Minimal · up to acbbb

This change adds configurable CI matrix inputs for devcontainer repositories and runner labels, with no actionable merge-blocking risk remaining beyond normal checks and review.


Comment @coderabbitai help to get the list of available commands.

@github-actions

This comment has been minimized.

Comment thread ci/matrix.yaml
# {gpu_count} - Number of GPUs on the runner (e.g. 1 or 2). Authoritative for
# the count suffix in the default template.
# {gpu_name} - The GPU display name (e.g. 'T4', 'H100 2-GPU')
# {gpu_testing} - '-testing' if the GPU is in a testing pool, '' otherwise

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

question: Do we actually need the -testing label suffix anymore? I'm pretty sure that was just a temporary thing from a long time ago now when we were still bringing up some new GPU runners, but I'm pretty sure that's not a thing anymore.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think we do, I will remove it in a later pass.

@github-actions

github-actions Bot commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

🥳 CI Workflow Results

🟩 Finished in 3h 47m: Pass: 100%/609 | Total: 6d 11h | Max: 59m 55s | Hits: 100%/767486

See results here.

@wmaxey
wmaxey merged commit 7e405cb into main Sep 2, 2026
695 checks passed
@wmaxey
wmaxey deleted the enh/parameterize_ci_matrix branch September 2, 2026 17:32
@github-actions

github-actions Bot commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

Backport failed for branch/3.4.x, because it was unable to cherry-pick the commit(s).

Please cherry-pick the changes locally and resolve any conflicts.

git fetch origin branch/3.4.x
git worktree add -d .worktree/backport-11022-to-branch/3.4.x origin/branch/3.4.x
cd .worktree/backport-11022-to-branch/3.4.x
git switch --create backport-11022-to-branch/3.4.x
git cherry-pick -x 7e405cb4ce8adfa61333fd4b9a99f76354cbfdad

@github-actions

github-actions Bot commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

wmaxey added a commit that referenced this pull request Sep 3, 2026
…ner labels (#11022) (#11163)

* Add fields in CI matrix that determine devcontainer repo and runner label generation

* Pass all GPUs regardless of count

(cherry picked from commit 7e405cb)
wmaxey added a commit that referenced this pull request Sep 3, 2026
…ner labels (#11022) (#11125)

* Add fields in CI matrix that determine devcontainer repo and runner label generation

* Pass all GPUs regardless of count

(cherry picked from commit 7e405cb)

Co-authored-by: Wesley Maxey <71408887+wmaxey@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

3 participants